Skip to content

Conversation

crazy-max
Copy link
Member

continue carrying changes from #3204

Comment on lines 204 to 231
-
name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: |
${{ env.IMAGE_NAME }}
# versioning strategy
## push semver tag v0.24.0
### moby/buildkit:v0.24.0
### moby/buildkit:latest
### moby/buildkit:v0.24.0-rootless
### moby/buildkit:rootless
## push semver prerelease tag v0.24.0-rc1
### moby/buildkit:v0.24.0-rc1
### moby/buildkit:v0.24.0-rc1-rootless
## push on master
### moby/buildkit:master
## scheduled event on master
### moby/buildkit:nightly
tags: |
type=schedule,pattern=nightly,suffix=${{ env.TAG_SUFFIX }}
type=ref,event=branch,suffix=${{ env.TAG_SUFFIX }}
type=ref,event=pr,suffix=${{ env.TAG_SUFFIX }}
type=semver,pattern={{raw}},suffix=${{ env.TAG_SUFFIX }}
type=raw,value=${{ env.TAG_LATEST }}
flavor: |
latest=false
annotations: |
org.opencontainers.image.title=BuildKit
org.opencontainers.image.vendor=Moby
bake-target: meta-helper
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested multiple events on my fork:

push on master

image

https://github.com/crazy-max/buildkit/actions/runs/16961888702/job/48076575201#step:6:1

  {
    "group": {
      "default": {
        "targets": [
          "image-cross"
        ]
      }
    },
    "target": {
      "image-cross": {
        "annotations": [
          "manifest:org.opencontainers.image.created=2025-08-14T09:56:07.905Z",
          "manifest:org.opencontainers.image.description=concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit",
          "manifest:org.opencontainers.image.licenses=Apache-2.0",
          "manifest:org.opencontainers.image.revision=64dca37637af3bc5106d8c860bc4355311818317",
          "manifest:org.opencontainers.image.source=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.title=BuildKit",
          "manifest:org.opencontainers.image.url=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.vendor=Moby",
          "manifest:org.opencontainers.image.version=master"
        ],
        "attest": [
          {
            "type": "sbom"
          },
          {
            "builder-id": "https://github.com/crazy-max/buildkit/actions/runs/16961888702/attempts/1",
            "mode": "max",
            "type": "provenance"
          }
        ],
        "context": ".",
        "dockerfile": "Dockerfile",
        "args": {
          "BUILDKIT_CONTEXT_KEEP_GIT_DIR": "1",
          "DOCKER_META_IMAGES": "moby/buildkit",
          "DOCKER_META_VERSION": "master",
          "GO_VERSION": "1.24"
        },
        "tags": [
          "moby/buildkit:master"
        ],
        "cache-from": [
          {
            "scope": "image",
            "type": "gha"
          }
        ],
        "cache-to": [
          {
            "scope": "image",
            "type": "gha"
          }
        ],
        "target": "",
        "platforms": [
          "linux/amd64",
          "linux/arm/v7",
          "linux/arm64",
          "linux/s390x",
          "linux/ppc64le",
          "linux/riscv64"
        ],
        "output": [
          {
            "type": "image"
          }
        ]
      }
    }
  }

image (rootless)

https://github.com/crazy-max/buildkit/actions/runs/16961888702/job/48076575207#step:6:1

  {
    "group": {
      "default": {
        "targets": [
          "image-cross"
        ]
      }
    },
    "target": {
      "image-cross": {
        "annotations": [
          "manifest:org.opencontainers.image.created=2025-08-14T09:56:03.712Z",
          "manifest:org.opencontainers.image.description=concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit",
          "manifest:org.opencontainers.image.licenses=Apache-2.0",
          "manifest:org.opencontainers.image.revision=64dca37637af3bc5106d8c860bc4355311818317",
          "manifest:org.opencontainers.image.source=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.title=BuildKit",
          "manifest:org.opencontainers.image.url=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.vendor=Moby",
          "manifest:org.opencontainers.image.version=master-rootless"
        ],
        "attest": [
          {
            "type": "sbom"
          },
          {
            "builder-id": "https://github.com/crazy-max/buildkit/actions/runs/16961888702/attempts/1",
            "mode": "max",
            "type": "provenance"
          }
        ],
        "context": ".",
        "dockerfile": "Dockerfile",
        "args": {
          "BUILDKIT_CONTEXT_KEEP_GIT_DIR": "1",
          "DOCKER_META_IMAGES": "moby/buildkit",
          "DOCKER_META_VERSION": "master-rootless",
          "GO_VERSION": "1.24"
        },
        "tags": [
          "moby/buildkit:master-rootless"
        ],
        "cache-from": [
          {
            "scope": "imagerootless",
            "type": "gha"
          }
        ],
        "cache-to": [
          {
            "scope": "imagerootless",
            "type": "gha"
          }
        ],
        "target": "rootless",
        "platforms": [
          "linux/amd64",
          "linux/arm/v7",
          "linux/arm64",
          "linux/s390x",
          "linux/ppc64le",
          "linux/riscv64"
        ],
        "output": [
          {
            "type": "image"
          }
        ]
      }
    }
  }

push v0.24.0-rc1 tag

image

https://github.com/crazy-max/buildkit/actions/runs/16961918571/job/48076537035#step:6:1

  {
    "group": {
      "default": {
        "targets": [
          "image-cross"
        ]
      }
    },
    "target": {
      "image-cross": {
        "annotations": [
          "manifest:org.opencontainers.image.created=2025-08-14T09:55:27.056Z",
          "manifest:org.opencontainers.image.description=concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit",
          "manifest:org.opencontainers.image.licenses=Apache-2.0",
          "manifest:org.opencontainers.image.revision=64dca37637af3bc5106d8c860bc4355311818317",
          "manifest:org.opencontainers.image.source=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.title=BuildKit",
          "manifest:org.opencontainers.image.url=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.vendor=Moby",
          "manifest:org.opencontainers.image.version=v0.24.0-rc1"
        ],
        "attest": [
          {
            "type": "sbom"
          },
          {
            "builder-id": "https://github.com/crazy-max/buildkit/actions/runs/16961918571/attempts/1",
            "mode": "max",
            "type": "provenance"
          }
        ],
        "context": ".",
        "dockerfile": "Dockerfile",
        "args": {
          "BUILDKIT_CONTEXT_KEEP_GIT_DIR": "1",
          "DOCKER_META_IMAGES": "moby/buildkit",
          "DOCKER_META_VERSION": "v0.24.0-rc1",
          "GO_VERSION": "1.24"
        },
        "tags": [
          "moby/buildkit:v0.24.0-rc1"
        ],
        "cache-from": [
          {
            "scope": "image",
            "type": "gha"
          }
        ],
        "cache-to": [
          {
            "scope": "image",
            "type": "gha"
          }
        ],
        "target": "",
        "platforms": [
          "linux/amd64",
          "linux/arm/v7",
          "linux/arm64",
          "linux/s390x",
          "linux/ppc64le",
          "linux/riscv64"
        ],
        "output": [
          {
            "type": "image"
          }
        ]
      }
    }
  }

image (rootless)

https://github.com/crazy-max/buildkit/actions/runs/16961918571/job/48076537038#step:6:1

   {
    "group": {
      "default": {
        "targets": [
          "image-cross"
        ]
      }
    },
    "target": {
      "image-cross": {
        "annotations": [
          "manifest:org.opencontainers.image.created=2025-08-14T09:55:24.827Z",
          "manifest:org.opencontainers.image.description=concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit",
          "manifest:org.opencontainers.image.licenses=Apache-2.0",
          "manifest:org.opencontainers.image.revision=64dca37637af3bc5106d8c860bc4355311818317",
          "manifest:org.opencontainers.image.source=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.title=BuildKit",
          "manifest:org.opencontainers.image.url=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.vendor=Moby",
          "manifest:org.opencontainers.image.version=v0.24.0-rc1-rootless"
        ],
        "attest": [
          {
            "type": "sbom"
          },
          {
            "builder-id": "https://github.com/crazy-max/buildkit/actions/runs/16961918571/attempts/1",
            "mode": "max",
            "type": "provenance"
          }
        ],
        "context": ".",
        "dockerfile": "Dockerfile",
        "args": {
          "BUILDKIT_CONTEXT_KEEP_GIT_DIR": "1",
          "DOCKER_META_IMAGES": "moby/buildkit",
          "DOCKER_META_VERSION": "v0.24.0-rc1-rootless",
          "GO_VERSION": "1.24"
        },
        "tags": [
          "moby/buildkit:v0.24.0-rc1-rootless"
        ],
        "cache-from": [
          {
            "scope": "imagerootless",
            "type": "gha"
          }
        ],
        "cache-to": [
          {
            "scope": "imagerootless",
            "type": "gha"
          }
        ],
        "target": "rootless",
        "platforms": [
          "linux/amd64",
          "linux/arm/v7",
          "linux/arm64",
          "linux/s390x",
          "linux/ppc64le",
          "linux/riscv64"
        ],
        "output": [
          {
            "type": "image"
          }
        ]
      }
    }
  }

push v0.24.0 tag

image

https://github.com/crazy-max/buildkit/actions/runs/16961922112/job/48076548628#step:6:1

  {
    "group": {
      "default": {
        "targets": [
          "image-cross"
        ]
      }
    },
    "target": {
      "image-cross": {
        "annotations": [
          "manifest:org.opencontainers.image.created=2025-08-14T09:55:35.224Z",
          "manifest:org.opencontainers.image.description=concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit",
          "manifest:org.opencontainers.image.licenses=Apache-2.0",
          "manifest:org.opencontainers.image.revision=64dca37637af3bc5106d8c860bc4355311818317",
          "manifest:org.opencontainers.image.source=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.title=BuildKit",
          "manifest:org.opencontainers.image.url=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.vendor=Moby",
          "manifest:org.opencontainers.image.version=v0.24.0"
        ],
        "attest": [
          {
            "type": "sbom"
          },
          {
            "builder-id": "https://github.com/crazy-max/buildkit/actions/runs/16961922112/attempts/1",
            "mode": "max",
            "type": "provenance"
          }
        ],
        "context": ".",
        "dockerfile": "Dockerfile",
        "args": {
          "BUILDKIT_CONTEXT_KEEP_GIT_DIR": "1",
          "DOCKER_META_IMAGES": "moby/buildkit",
          "DOCKER_META_VERSION": "v0.24.0",
          "GO_VERSION": "1.24"
        },
        "tags": [
          "moby/buildkit:v0.24.0",
          "moby/buildkit:latest"
        ],
        "cache-from": [
          {
            "scope": "image",
            "type": "gha"
          }
        ],
        "cache-to": [
          {
            "scope": "image",
            "type": "gha"
          }
        ],
        "target": "",
        "platforms": [
          "linux/amd64",
          "linux/arm/v7",
          "linux/arm64",
          "linux/s390x",
          "linux/ppc64le",
          "linux/riscv64"
        ],
        "output": [
          {
            "type": "image"
          }
        ]
      }
    }
  }

image (rootless)

https://github.com/crazy-max/buildkit/actions/runs/16961922112/job/48076548571#step:6:1

  {
    "group": {
      "default": {
        "targets": [
          "image-cross"
        ]
      }
    },
    "target": {
      "image-cross": {
        "annotations": [
          "manifest:org.opencontainers.image.created=2025-08-14T09:55:34.809Z",
          "manifest:org.opencontainers.image.description=concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit",
          "manifest:org.opencontainers.image.licenses=Apache-2.0",
          "manifest:org.opencontainers.image.revision=64dca37637af3bc5106d8c860bc4355311818317",
          "manifest:org.opencontainers.image.source=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.title=BuildKit",
          "manifest:org.opencontainers.image.url=https://github.com/crazy-max/buildkit",
          "manifest:org.opencontainers.image.vendor=Moby",
          "manifest:org.opencontainers.image.version=v0.24.0-rootless"
        ],
        "attest": [
          {
            "type": "sbom"
          },
          {
            "builder-id": "https://github.com/crazy-max/buildkit/actions/runs/16961922112/attempts/1",
            "mode": "max",
            "type": "provenance"
          }
        ],
        "context": ".",
        "dockerfile": "Dockerfile",
        "args": {
          "BUILDKIT_CONTEXT_KEEP_GIT_DIR": "1",
          "DOCKER_META_IMAGES": "moby/buildkit",
          "DOCKER_META_VERSION": "v0.24.0-rootless",
          "GO_VERSION": "1.24"
        },
        "tags": [
          "moby/buildkit:v0.24.0-rootless",
          "moby/buildkit:rootless"
        ],
        "cache-from": [
          {
            "scope": "imagerootless",
            "type": "gha"
          }
        ],
        "cache-to": [
          {
            "scope": "imagerootless",
            "type": "gha"
          }
        ],
        "target": "rootless",
        "platforms": [
          "linux/amd64",
          "linux/arm/v7",
          "linux/arm64",
          "linux/s390x",
          "linux/ppc64le",
          "linux/riscv64"
        ],
        "output": [
          {
            "type": "image"
          }
        ]
      }
    }
  }

@crazy-max crazy-max marked this pull request as ready for review August 14, 2025 10:15
@crazy-max crazy-max requested a review from tonistiigi August 14, 2025 10:15
name: Build
uses: docker/bake-action@v6
with:
source: ${{ github.server_url }}/${{ github.repository }}.git#${{ github.ref }}
Copy link
Member Author

@crazy-max crazy-max Aug 14, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can't use Git context from our actions-toolkit: https://github.com/docker/actions-toolkit/blob/633bcf1936ffff0e05a4bbe2b23c71abf6f4111e/src/context.ts#L45-L60

Because currently it fetches by sha and not git ref so tags are not pulled: https://github.com/crazy-max/buildkit/actions/runs/16967780276/job/48096258733#step:7:440. That would therefore set a commit sha as BuildKit version: https://github.com/crazy-max/buildkit/actions/runs/16967780276/job/48096258733#step:7:1654

docker/actions-toolkit#677 would fix it but it's probably better to wait for #5974.

So in the meantime set Git context manually with full git ref as we currently do in our hack script:

currentcontext="https://github.com/$GITHUB_REPOSITORY.git#$GITHUB_REF"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/ci area/hack building buildkit itself
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant